[LANGUAGE english; PARENT keywords; PAGE 11-31]
[C;6;B]		DEFINE or DEF <label=symbol> or <label=value> ...
[7]Default: see the list of internal symbols below
[J;1;N]
  Add a declaration. This function may be used to declare an \
equivalent or to set a specific value dynamically. A value \
can be specified in decimal or hexadecimal. When you declare \
an hexadecimal value, you must start it with the dollar ($) \
sign.
  When lk find a wrong value (Too large, with invalid digits.) \
the value zero will be used instead (No warning is generated!)

  A label cannot start with the dollar ($) sign or any digit (0-9.) This \
equivalent will not generates a 'defined twice' error and will \
be used only when required (Which means, while this define is \
present in one of your object file, the one defined on command \
line remains useless.)

  While those defines are not recursive, a define must be or a \
value or a symbol which exist in your object files.

  Labels are case sensitive except if CASEINSENSITIVE was \
specified.
  lk has some intern variables. Those are:
  (Note: all DATA and BSS variables are defined with only the \
relative data. Other DATA and BSS hunks are not considered.)
[INDENT 7]
[2]     __autostartup
[1]         This label is automatically defined when required. \
It points on the first hunk of code (except where it has \
a reference) found or to the startup label when it has been \
given. This enables a startup code like those of \
'priority.o' or 'stack.o'.

[2]     __BSS_BASE
[1]         Defines the pointer at the beginning of the BSS block. \
This is equal to the sum of __DATA_BASE and __DATA_LENGTH.

[2]     __BSS_LENGTH
[1]         Defines the total length of the BSS block.
         (This length is given in long words)

[2]     __COPYRIGHT
[1]         The COPYRIGHT (or LIBID) instruction generate that \
symbol as being a pointer on the automatically created string \
identification. You can use it as you like.

[2]     __DATA_BASE
[1]         Defines the pointer at the beginning of the DATA block.

[2]     __DATA_BYTESIZE
[1]         Defines the total length of the near DATA block includind the \
BSS block. This is the sum of __BSS_LENGTH and __DATA_LENGTH. This \
length is given en byte.

[2]     __DATA_LENGTH
[1]         Defines the length of the DATA block.
         (This length is given in long words)

[2]     __DATA_OFFSET
[1]         Defines the offset for (An) to access DATA buffer. \
You may fix its value with the OFFSET command.

[2]     __DATA_POSITION
[1]         Defines the position for (An) from the beginning of \
the buffer. If you use the instruction OFFSET, you must first \
negate the value (__DATA_POSITION = - __DATA_OFFSET.)

[2]     __DATA_SIZE
[1]         Defines the total length of the near DATA block including the \
BSS block. This is the sum of __BSS_LENGTH and __DATA_LENGTH.
         (This length is given in long words)

[2]     __DATA_START
[1]         Defines the pointer needed for An. This is also the sum \
of __DATA_BASE and __DATA_OFFSET.

[2]     __ISDICE
[1]         Is TRUE (1) when the keyword DICE was used, otherwise its \
FALSE (0).

[2]     __ISPURE
[1]         Is TRUE (1) when the keyword PURE was used, otherwise its \
FALSE (0).

[2]     __ISSLINK
[1]         Is TRUE (1) when the keyword SLINK was used, otherwise its \
FALSE (0).

[2]     __LIBRARYPRIORITY
[1]         Takes the value given through the LIBPRIORITY instruction. \
This symbole can be used to automatically define the Amiga library \
priority.

[2]     __LIBRARYREVISION
[1]         Takes the value given through the LIBREVISION instruction. \
This is to support the compatibility with Slink. This symbol is always \
define and receive the value 0 by default.

[2]     __LIBRARYVERSION
[1]         Takes the value given through the LIBVERSION instruction. \
This is to support the compatibility with Slink. This symbol is always \
define and receive the value 0 by default.

[2]     __NEGATIVESIZE
[1]         Negative size for shared Amiga libraries. This is the number \
of function multiply by 6. Note that from V36 of Exec, libraries are \
automatically long word justified and this value might be wrong \
by 2. It's preferable to use the system defined value which is \
saved in LIB_NEGSIZE.

[2]     __NUMCTORS
[1]         Total number of constructors.
         (Valid only when the instruction SLINK was used)

[2]     __NUMDTORS
[1]         Total number of destructors.
         (Valid only when the instruction SLINK was used)

[2]     __NUMFUNCS
[1]         This symbol contains the number of functions available \
into a shared Amiga library.

[2]     PRIORITY
[1]         Symbol created when the PRIORITY keyword is used, \
please refer to that command for more information.

[2]     REVISION
[1]         Symbol created when the VERSION keyword is used, \
please refer to that command for more information.

[2]     __STACKSIZE
[1]         Symbol always available. By default set to 4096 \
and modified via the instruction STACKSIZE.

[2]     VERSION
[1]         Symbol created when the VERSION keyword is used, \
please refer to that command for more information.
[INDENT]
  See also:
[L;3][LINK caseinsensitive]	    CASEINSENSITIVE
[LINK version]			    LIBREVISION
[LINK version]			    LIBVERSION
[LINK offset]			    OFFSET
[LINK priority]			    PRIORITY
[LINK pure]			    PURE
[LINK slink]			    SLINK
[LINK stacksize]		    STACKSIZE
[5; LINK about; GOTO address]	    Become Registred
